home *** CD-ROM | disk | FTP | other *** search
- #ifndef LIBRARIES_CONFIGREGS_H
- #define LIBRARIES_CONFIGREGS_H
- #ifndef EXEC_TYPES_H
- #include "exec/types.h"
- #endif !EXEC_TYPES_H
- struct ExpansionRom {
- UBYTE er_Type;
- UBYTE er_Product;
- UBYTE er_Flags;
- UBYTE er_Reserved03;
- UWORD er_Manufacturer;
- ULONG er_SerialNumber;
- UWORD er_InitDiagVec;
- UBYTE er_Reserved0c;
- UBYTE er_Reserved0d;
- UBYTE er_Reserved0e;
- UBYTE er_Reserved0f;
- };
- struct ExpansionControl {
- UBYTE ec_Interrupt;
- UBYTE ec_Reserved11;
- UBYTE ec_BaseAddress;
- UBYTE ec_Shutup;
- UBYTE ec_Reserved14;
- UBYTE ec_Reserved15;
- UBYTE ec_Reserved16;
- UBYTE ec_Reserved17;
- UBYTE ec_Reserved18;
- UBYTE ec_Reserved19;
- UBYTE ec_Reserved1a;
- UBYTE ec_Reserved1b;
- UBYTE ec_Reserved1c;
- UBYTE ec_Reserved1d;
- UBYTE ec_Reserved1e;
- UBYTE ec_Reserved1f;
- };
- #define E_SLOTSIZE 0x10000
- #define E_SLOTMASK 0xffff
- #define E_SLOTSHIFT 16
- #define E_EXPANSIONBASE 0xe80000
- #define E_EXPANSIONSIZE 0x080000
- #define E_EXPANSIONSLOTS 8
- #define E_MEMORYBASE 0x200000
- #define E_MEMORYSIZE 0x800000
- #define E_MEMORYSLOTS 128
- #define ERT_TYPEMASK 0xc0
- #define ERT_TYPEBIT 6
- #define ERT_TYPESIZE 2
- #define ERT_NEWBOARD 0xc0
- #define ERT_MEMMASK 0x07
- #define ERT_MEMBIT 0
- #define ERT_MEMSIZE 3
- #define ERTB_CHAINEDCONFIG 3
- #define ERTB_DIAGVALID 4
- #define ERTB_MEMLIST 5
- #define ERTF_CHAINEDCONFIG (1<<3)
- #define ERTF_DIAGVALID (1<<4)
- #define ERTF_MEMLIST (1<<5)
- #define ERFB_MEMSPACE 7
- #define ERFB_NOSHUTUP 6
- #define ERFF_MEMSPACE (1<<7)
- #define ERFF_NOSHUTUP (1<<6)
- #define ERT_MEMNEEDED(t) \
- (((t)&ERT_MEMMASK)? 0x10000 << (((t)&ERT_MEMMASK) -1) : 0x800000 )
- #define ERT_SLOTSNEEDED(t) \
- (((t)&ERT_MEMMASK)? 1 << (((t)&ERT_MEMMASK)-1) : 0x80 )
- #define ECIB_INTENA 1
- #define ECIB_RESET 3
- #define ECIB_INT2PEND 4
- #define ECIB_INT6PEND 5
- #define ECIB_INT7PEND 6
- #define ECIB_INTERRUPTING 7
- #define ECIF_INTENA (1<<1)
- #define ECIF_RESET (1<<3)
- #define ECIF_INT2PEND (1<<4)
- #define ECIF_INT6PEND (1<<5)
- #define ECIF_INT7PEND (1<<6)
- #define ECIF_INTERRUPTING (1<<7)
- #define EC_MEMADDR(slot) ((slot) << (E_SLOTSHIFT) )
- #define EROFFSET(er) ((int)&((struct ExpansionRom *)0)->er)
- #define ECOFFSET(ec) \
- (sizeof(struct ExpansionRom)+((int)&((struct ExpansionControl *)0)->ec))
- struct DiagArea {
- UBYTE da_Config;
- UBYTE da_Flags;
- UWORD da_Size;
- UWORD da_DiagPoint;
- UWORD da_BootPoint;
- UWORD da_Name;
- UWORD da_Reserved01;
- UWORD da_Reserved02;
- };
- #define DAC_BUSWIDTH 0xC0
- #define DAC_NIBBLEWIDE 0x00
- #define DAC_BYTEWIDE 0x40
- #define DAC_WORDWIDE 0x80
- #define DAC_BOOTTIME 0x30
- #define DAC_NEVER 0x00
- #define DAC_CONFIGTIME 0x10
- #define DAC_BINDTIME 0x20
- #endif
-